// 选择排序，选出最大值然后排序

#include <stdio.h>

int max(int a[], int len);

int main(int argc, char const *argv[])
{
    int a[] = {88, 25, 93, 37, 26, 68, 14, 15, 8, 40};
    int len = sizeof(a) / sizeof(a[0]);

    for (int i = len - 1; i > 0; i--)
    {
        int maxid = max(a, i + 1);
        // printf("%d\n", maxid);

        // swap a[maxid], a[len - 1]
        int t = a[maxid];
        a[maxid] = a[i];
        a[i] = t;
        for (int j = 0; j < len; j++)
        {
            printf("%d\t", a[j]);
        }
        printf("\n\n");
    }
    
    return 0;
}

int max(int a[], int len)
{
    int maxid = 0;
    for (int i = 1; i < len; i++)
    {
        if (a[i] > a[maxid])
        {
            maxid = i;
        }
    }
    return maxid;
}